Receivers including iterative map detection and related methods

ABSTRACT

Methods and receivers are described for receiving data transmitted over a radio communications channel wherein the data is transmitted as a plurality of sequential symbols wherein each sequential symbol is determined as a function of a previous symbol and a respective differential symbol corresponding to a portion of the data being transmitted. In particular, a plurality of received segments are sampled wherein the received segments correspond to respective ones of the transmitted symbols, and an initial differential MAP symbol estimation is performed for estimated received symbols corresponding to the sampled received segments to provide initial estimates of the differential symbols. New received symbol estimates are calculated using the initial estimates of the differential symbols, and a subsequent differential MAP symbol estimation is performed using the new received symbol estimates to provide improved estimates of the differential symbols. Bit probability calculations are performed on the improved estimates of the differential symbols.

FIELD OF THE INVENTION

The present invention relates to the field of communications and more particularly to communications systems including equalizers used to detect coherent symbols and related methods.

BACKGROUND OF THE INVENTION

In current D-AMPS (IS-136) cellular communications systems, maximum likelihood sequence estimation (MLSE) equalizers detect coherent symbol values using forward or backward detection at the mobile terminal depending on the quality of the current and next slot synchronization words. At the base-station, backward MLSE detection used for symbols to the left of the synchronization sequence and forward detection is used for symbols to the right of the synchronization sequence. For example, MLSE equalization in the forward direction can be performed using the Viterbi algorithm as discussed in the reference by Ungerboeck entitled “Adaptive Maximum-Likelihood Receiver for Carrier-Modulated Data-Transmission Systems”, IEEE Trans. Comm., COM-22: pages 624-636, May 1974. The disclosure of this reference is hereby incorporated herein in its entirety by reference.

Overall log-likelihoods used to detect a sequence of symbols [a₀, a₁, . . . , a_(N)] can take the form: $\begin{matrix} {{l\left\{ {a;y} \right\}} = {\sum\limits_{n = 0}^{N}\quad {\left\lbrack {{2\Re \left\{ {a_{n}^{*}z_{n}} \right\}} - {{a_{n}}^{2}s_{0,n}} - {\sum\limits_{l - 1}^{\min {({n,N})}}\quad {2\Re \left\{ {a_{n}^{*}s_{l,n}a_{n - 1}} \right\}}}} \right\rbrack.}}} & (1) \end{matrix}$

In this equation, the equalization parameters z_(n) and s_(l,n) are described in the Ungerboeck reference, and these equalization parameters are extended to fractionally-spaced receivers in the reference by Molnar et al. entitled “A Novel Fractionally-Spaced MLSE Receiver And Channel Tracking With Side Information”, Proc. 48^(th) IEEE Veh. Tech. Conf., May 1998. The disclosure of this reference is hereby incorporated herein in its entirety by reference.

The term inside the square brackets of Equation (1) forms the metric for the symbol a_(n). This approach takes advantage of the symmetry of the s_(l,n) terms, and the summation of the s-terms is shown in FIG. 1 for an example with N=2. The circles correspond to the s_(0,n) terms and for each n, the s-terms to the left and to the top of the circled s_(0,n) terms correspond to the terms s_(l,n) for a specific value of n.

When backward equalization is used, the following log-likelihood is used to determine the metric for the Viterbi algorithm: $\begin{matrix} {{{l\left\{ {a;y} \right\}} = {\sum\limits_{n = 0}^{N}\quad \left\lbrack {{2\Re \left\{ {a_{n}^{*}z_{n}} \right\}} - {{a_{n}}^{2}s_{0,n}} - {\sum\limits_{l = 1}^{\min {({{N - n},N})}}\quad {2\Re \left\{ {a_{n}^{*}s_{l,{n + l}}^{*}a_{n + l}} \right\}}}} \right\rbrack}}\quad} & (2) \end{matrix}$

Note that the first two terms in the metric are the same for either forward or backward equalization, while the summation of the s-terms is different. The summation of the s-terms for this case is shown in FIG. 2, again for the case of N=2. The circled terms remain the same as for the forward metric, but now the s-terms for a specific value of n are chosen as those terms to the right and below the n'th diagonal element.

For differential-QPSK modulation, the coherent symbols can be estimated using the above MLSE equalization approach. Estimates of the differential symbols and bits can then be obtained from the detected coherent symbols, while soft differential bit information can be obtained from the saved equalization metrics as discussed in the reference by Bottomley entitled “Soft Information in ADC”, Technical Report, Ericsson-GE, 1993. The disclosure of this reference is hereby incorporated herein in its entirety by reference.

For digital communications, maximum a-posterori (MAP) detection has been used as discussed in the reference by Bahl et al. entitled “Optimal Decoding of Linear Codes for Minimizing Symbol Error Rate”, IEEE Trans. Inf. Theory, IT-20: pages 284-287, March 1974. This approach is also similar to approaches discussed in the following references: Baum et al., “A Maximization Technique Occurring in the Statistical Analysis of Probabilistic Functions of Markov Chains”, Ann. Math. Statist., 41: pages 164-171, 1970; Sundberg, “An Iterative Method for Solution of the Likelihood Equations for Incomplete Data from Exponential Families”, Comm. Statist. Simulation. Comput., B5: pages 55-64, 1976; Erkurt et al., “Joint Detection and Channel Estimation for Rapidly Fading Channels”, Globecom 1992, pages 910-914, December 1992; Kaleh et al., “Joint Parameter Estimation and Symbol Detection for Linear or Nonlinear Unknown Channels”, IEEE Trans. Comm. 42(7): pages 2406-2413, July 1994; Krishnamurthy, “Adaptive Estimation of Hidden Nearly Completely Decomposable Markov Chains With Applications in Blind Equalization”, “International Journal of Adaptive Control and Signal Processing”, 8: pages 237-260,1994; Cirpan et al., “Stochastic Maximum Likelihood Methods for Semi-Blind Channel Estimation”, IEEE Signal Processing Letters, 5(1): pages 21-24, January 1998; and Baccarelli et al., “Combined Channel Fast-Fading Digital Links”, IEEE Trans. Comm., 46(4): pages 424-427, April 1998. The disclosures of each of these references are hereby incorporated herein in their entirety by reference.

The metric for MAP detection of the coherent symbols can be derived from the following overall log-likelihood: $\begin{matrix} {{l\left\{ {a;y} \right\}} = {{\sum\limits_{n = 0}^{N}\quad {2\Re \left\{ {a_{n}^{*}z_{n}} \right\}}} - {\sum\limits_{n = 0}^{N}\quad {\sum\limits_{m = 0}^{N}\quad {a_{n}^{*}h_{n,m}{a_{m}.}}}}}} & (3) \end{matrix}$

The MAP metric is found by collecting all terms containing a_(n). For example, in FIG. 3A, the symbol a₁ contribution to the double sum in Equation (3) is shown by the enclosed h_(n,m) terms. The h_(n,m) terms are related to the s-parameters in the following manner: $\begin{matrix} {h_{n,m} = \left\{ \begin{matrix} s_{{n - m},n} & {{n \geq m};} \\ {s_{{n - m},m} = s_{{m - n},m}^{*}} & {n < {m.}} \end{matrix} \right.} & (4) \end{matrix}$

The corresponding terms are shown in FIG. 3B. Using the s-parameters from FIG. 3B, the contribution to the MAP metric for symbol an can be written as: $\begin{matrix} {{l\left\{ {a_{n};y} \right\}} = {{2\Re \left\{ {a_{n}^{*}z_{n}} \right\}} - {{a_{n}}^{2}s_{0,n}} - {\sum\limits_{l = 1}^{\min {({n,N})}}\quad {2\Re \left\{ {a_{n}^{*}s_{l,n}a_{n - l}} \right\}}} - {\sum\limits_{l = 1}^{\min {({{N - n},N})}}\quad {2\Re \quad y{\left\{ {a_{n}^{*}s_{l,n}^{*}a_{n + l}} \right\}.}}}}} & (5) \end{matrix}$

The terms contributing to the double summation in Equation (3) use the same folding as in the forward and backward MLSE equalizers previously discussed.

Notwithstanding the equalizer systems and methods discussed above, there continues to exist a need in the art for improved equalizer systems and methods.

SUMMARY OF THE INVENTION

It is therefore an object of the present invention to provide improved methods and receivers for receiving data transmitted over radio communications channels.

This and other objects are provided according to the present invention by methods for receiving data transmitted over a radio communications channel wherein the data is transmitted as a plurality of sequential symbols wherein each sequential symbol is determined as a function of a previous symbol and a respective differential symbol corresponding to a portion of the data being transmitted. A plurality of received segments are sampled wherein the received segments correspond to respective ones of the transmitted symbols, and an initial differential MAP symbol estimation is performed for estimated received symbols corresponding to the sampled received segments to provide initial estimates of the differential symbols. New received symbol estimates are calculated using the initial estimates of the differential symbols, and a subsequent differential MAP symbol estimation is performed using the new received symbol estimates to provide improved estimates of the differential symbols. Bit probability calculations are performed on the improved estimates of the differential symbols. Improved data reception can thus be provided over radio communications channels.

The steps of calculating the new received symbol estimates and performing subsequent differential MAP symbol estimation can be repeated at least once and the bit probability calculations can be performed on the improved estimates of the differential symbols provided during subsequent differential MAP symbol estimation. More particularly, the steps of calculating the new received symbol estimates and performing subsequent differential MAP symbol estimation can be repeated a predetermined number of times. Alternately, the steps of calculating the new received symbol estimates and performing subsequent differential MAP symbol estimation can be repeated until the improved estimates of the differential symbols converge to within a predetermined threshold.

In addition, the estimates of the bit values can be decoded. Furthermore, the decoded estimates of the bit values can be re-encoded to provide re-encoded received symbol estimates, subsequent differential MAP symbol estimation can be performed using the re-encoded received symbol estimates to provide further improved estimates of the differential symbols, and bit probability calculations can be performed on the further improved estimates of the differential symbols.

The steps of performing the differential MAP symbol estimation can each comprise performing log-likelihood calculations for estimated received symbols corresponding to the sampled transmission segments, and performing differential symbol probability calculations. The log-likelihood calculations can also be preceded by estimating channel parameters based on the sampled transmission segments wherein the log-likelihood calculations use the estimated channel parameters. More particularly, the estimated channel parameters can be estimated s-parameters and z-parameters.

The methods and receivers of the present invention can thus provide improved data reception.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 illustrates symbol folding for forward equalization according to the prior art.

FIG. 2 illustrates symbol folding for backward equalization according to the prior art.

FIGS. 3A and 3B illustrate terms used in a MAP symbol metric according to the prior art.

FIG. 4 illustrates terms used in a first MAP differential symbol log-likelihood calculation according to the present invention.

FIG. 5 illustrates terms used in a second MAP differential symbol log-likelihood calculation according to the present invention.

FIGS. 6 and 7 illustrate states for differential phase shift keying according to the present invention.

FIG. 8 is a block diagram illustrating a transmitter and a receiver according to the present invention.

FIG. 9 is a block diagram illustrating an equalizer from the receiver of FIG. 8.

FIG. 10 is a block diagram illustrating a coherent symbol memory of the equalizer of FIG. 9.

DETAILED DESCRIPTION

The present invention will now be described more fully hereinafter with reference to the accompanying drawings, in which preferred embodiments of the invention are shown. This invention may, however, be embodied in many different forms and should not be construed as limited to the embodiments set forth herein; rather, these embodiments are provided so that this disclosure will be thorough and complete, and will fully convey the scope of the invention to those skilled in the art. Like numbers refer to like elements throughout.

Improved methods for equalization and detection of maximum a-posteriori (MAP) probabilities of differential bits associated with differential-QPSK (D-QPSK) modulation will now be described. In general, an iterative approach is used for computing bit probabilities from soft-detected symbol values which are used for bit detection. Alternately, bit probabilities can be computed using a post-processing step from a previous equalization process.

For differential PSK modulation (such as D-QPSK modulation), a_(n)=b_(n)a_(n−1), where b_(n) is the symbol defined by a differential bit-to-symbol mapping function. In other words, a_(n) (the symbol transmitted at time n) is a function of b_(n) (representing the binary data to be transmitted) and a_(n−1), (the symbol previously transmitted at time n−1). Furthermore, it can be assumed that both |a_(n)|²=1 and |b_(n)|²=1 for all n, so that b_(n)=a_(n)a*_(n−1). This notation can allow for MAP detection of the differential symbols and bits based on the coherent metrics. To detect the differential symbol b_(n), the log-likelihood is used to generate a new log-likelihood including the terms b_(n). With reference to FIG. 4, the log-likelihood for coherent symbols a_(n) and a_(n−1) can be used with a_(n)=b_(n)a_(n−1) and a_(n−1)=b*_(n)a_(n) to generate the log-likelihood for differential symbols b_(n).

FIG. 4 shows the terms used for detecting b₂. The enclosed terms represent the terms within the double summation of Equation (3) and are obtained from individual log-likelihoods l{a₂;y} and l{a₁;y}. The shaded terms h_(1,2) and h_(2,1) are counted twice and should thus be accounted for by subtraction of the duplicate terms from the resulting log-likelihood. The log-likelihood for the differential symbol b_(n) is derived by combining l{a_(n);y} and l{a_(n−1);y}, removing the duplicate terms, and replacing a_(n) and a_(n−1), with the forms that contain b_(n). The coherent log-likelihoods including b_(n) are: $\begin{matrix} {{{l\left\{ {a_{n};y} \right\}} = {{2\Re \left\{ {b_{n}^{*}a_{n - 1}^{*}z_{n}} \right\}} - s_{0,n} - {\sum\limits_{l = 1}^{\min {({n,N})}}\quad {2\Re \left\{ {b_{n}^{*}a_{n - 1}^{*}s_{l,n}a_{n - l}} \right\}}} - {\sum\limits_{l = 1}^{\min {({{N - n},N})}}\quad {2\Re \left\{ {b_{n}^{*}a_{n - 1}^{*}s_{l,{n + l}}^{*}a_{n + l}} \right\}}}}},} & (6) \end{matrix}$

and: $\begin{matrix} {{l\left\{ {a_{n - 1};y} \right\}} = {{2\Re \left\{ {b_{n}^{*}a_{n}^{*}z_{n - 1}} \right\}} - s_{0,{n - 1}} - {\sum\limits_{l = 1}^{\min {({{n - 1},N})}}\quad {2\Re \left\{ {b_{n}a_{n}^{*}s_{l,{n - 1}}a_{n - 1 - l}} \right\}}} - {\sum\limits_{l = 1}^{\min {({{N - n + 1},N})}}\quad {2\Re {\left\{ {b_{n}a_{n}^{*}s_{l,{n - 1 + l}}^{*}a_{n - 1 + l}} \right\}.}}}}} & (7) \end{matrix}$

Combining Equations (6) and (7) and eliminating those terms not containing b_(n) and the duplicate terms results in l{b_(n);y} as follows: $\begin{matrix} {{l\left\{ {b_{n};y} \right\}} = {{2\Re \left\{ {b_{n}^{*}a_{n - 1}^{*}z_{n}} \right\}} + {2\Re \left\{ {b_{n}^{*}a_{n}^{*}z_{n - 1}} \right\}} - {2\Re \left\{ {b_{n}^{*}s_{1,n}} \right\}} - {\sum\limits_{l = 2}^{\min {({n,N})}}\quad {2\Re \left\{ {b_{n}^{*}a_{n - 1}^{*}s_{l,n}a_{n - l}} \right\}}} - {\sum\limits_{l = 1}^{\min {({{N - n},N})}}\quad {2\Re \left\{ {b_{n}^{*}a_{n - 1}^{*}s_{l,{n + l}}^{*}a_{n + l}} \right\}}} - {\sum\limits_{l = 1}^{\min {({{n - 1},N})}}\quad {2\Re \left\{ {b_{n}a_{n}^{*}s_{l,{n - 1}}a_{n - 1 - l}} \right\}}} - {\sum\limits_{l = 2}^{\min {({{N - n + 1},N})}}\quad {2\Re {\left\{ {b_{n}a_{n}^{*}s_{l,{n - 1 + l}}^{*}a_{n - 1 + l}} \right\}.}}}}} & (8) \end{matrix}$

It should be noted that the terms including s_(1,n) are not dependent on a_(n) or a_(n−1).

An alternate log-likelihood can also be obtained by rewriting some of the terms in Equations (6) and (7) expressing a_(n) as either a_(n)=b_(n)a_(n−1) or a_(n−1)=b*_(n+1)a_(n+1). The resulting coherent log-likelihoods are as follows: $\begin{matrix} {{{l\left\{ {a_{n};y} \right\}} = {{\Re \left\{ {b_{n}^{*}a_{n - 1}^{*}z_{n}} \right\}} + {\Re \left\{ {b_{n + 1}a_{n + 1}^{*}z_{n}} \right\}} - s_{0,n} - {\sum\limits_{i = 1}^{\min {({n,N})}}\quad {2\Re \left\{ {b_{n}^{*}a_{n - 1}^{*}s_{l,n}a_{n - l}} \right\}}} - {\sum\limits_{l = 1}^{\min {({{N - n},N})}}\quad {2\Re \left\{ {b_{n + 1}a_{n + 1}^{*}s_{l,{n + l}}^{*}a_{n + l}} \right\}}}}},} & (9) \end{matrix}$

and: $\begin{matrix} {{l\left\{ {a_{n - 1};y} \right\}} = {{\Re \left\{ {b_{n}a_{n}^{*}z_{n - 1}} \right\}} + {\Re \left\{ {b_{n - 1}^{*}a_{n - 2}^{*}z_{n - 1}} \right\}} - s_{0,{n - 1}} - {\sum\limits_{l = 1}^{\min {({{n - 1},N})}}\quad {2\Re \left\{ {b_{n - 1}^{*}a_{n - 2}^{*}s_{l,{n - 1}}a_{n - 1 - l}} \right\}}} - {\sum\limits_{l = 1}^{\min {({{N - n + 1},N})}}\quad {2\Re {\left\{ {b_{n}a_{n}^{*}s_{l,{n - 1 + l}}^{*}a_{n - 1 + l}} \right\}.}}}}} & (10) \end{matrix}$

Collecting the terms with b_(n) and eliminating the duplicate terms results in an alternate l{b_(n);y} as follows: $\begin{matrix} {{l\left\{ {b_{n};y} \right\}} = {{\Re \left\{ {b_{n}^{*}a_{n - 1}^{*}z_{n}} \right\}} + {\Re \left\{ {b_{n}a_{n}^{*}z_{n - 1}} \right\}} - {2\Re \left\{ {b_{n}^{*}s_{1,n}} \right\}} - {\sum\limits_{l = 2}^{\min {({n,N})}}\quad {2\Re \left\{ {b_{n}^{*}a_{n - 1}^{*}s_{l,n}a_{n - l}} \right\}}} - {\sum\limits_{l = 2}^{\min {({{N - n + 1},N})}}\quad {2\Re {\left\{ {b_{n}a_{n}^{*}s_{l,{n - 1 + l}}^{*}a_{n - 1 + l}} \right\}.}}}}} & (11) \end{matrix}$

The s-terms used in the log-likelihood which come from the double summation of Equation (3) are shown in FIG. 5. Note that {a*_(n)z_(n)} has been arbitrarily decomposed into one term including b_(n) and another term not, including b_(n). Alternate decompositions are also possible.

Calculation of the log-likelihood will now be discussed as follows. In particular, the differential symbol b_(n) can be written as b_(n)=r^(T) _(n)b_(n), where b_(n) is a vector including the symbol alphabet (i.e., the possible symbol values that bn may take), and r_(n) is a real vector including all zeros except for a single element which has a value one (i.e., an indicator vector). The log-likelihood l{b_(n);y} can thus be written in the following form: $\begin{matrix} \begin{matrix} {{{l\left\{ {b_{n},y} \right\}} = {r_{n}^{T}{u_{n}\left( \left\{ a_{n} \right\} \right)}}},} \\ {= {l{\left\{ {r_{n},y} \right\}.}}} \end{matrix} & (12) \end{matrix}$

In this form, u_(n)({a_(n)}) is a vector of log-likelihoods with b_(n) replacing b_(n). Using the log-likelihood of Equation (12), for example, the following equation can be developed: $\begin{matrix} \begin{matrix} {{u_{n}\left( \left\{ a_{n} \right\} \right)} = \quad {{\Re \left\{ {b_{n}^{*}a_{n - 1}^{*}z_{n}} \right\}} + {\Re \left\{ {b_{n}a_{n}^{*}z_{n - 1}} \right\}} - {2\Re \left\{ {b_{n}^{*}s_{1,n}} \right\}} -}} \\ {\quad {{\sum\limits_{l = 2}^{\min {({n,N})}}\quad {2\Re \left\{ {b_{n}^{*}a_{n - 1}^{*}s_{l,n}a_{n - l}} \right\}}} -}} \\ {\quad {\sum\limits_{l = 2}^{\min {({{N - n + 1},N})}}\quad {2\Re {\left\{ {b_{n}a_{n}^{*}s_{l,{n - 1 + l}}a_{n - 1 + l}} \right\}.}}}} \end{matrix} & (13) \end{matrix}$

By estimating the vector r_(n), b_(n) can be detected. The estimate of r_(n) will be denoted as {circumflex over (r)}_(n). In particular, the estimate can be {circumflex over (r)}_(n)=E{r_(n)|y} which is a vector with the t'th element equal to p(r_(n)=e_(t)|y), where e_(t) is a unit vector with a one in the t'th position and zero's elsewhere. For D-QPSK modulation, tε{0, 1, 2, 3}. The estimate of r_(n)(t) is computed by: $\begin{matrix} {{p\left( {r_{n} = \left. e_{t} \middle| y \right.} \right)} = \frac{\exp \left( {1\left\{ {{r_{n}(t)};y} \right\}} \right)}{\sum\limits_{s = 0}^{T - 1}\quad {\exp \left( {1\left\{ {{r_{n}(s)};y} \right\}} \right)}}} & (14) \end{matrix}$

where: ${\sum\limits_{t = 0}^{T - 1}\quad {{\hat{r}}_{n}(t)}} = 1.$

Given an estimate of {circumflex over (r)}_(n), the probabilities of the differential bits can be calculated by evaluating partial probabilities. For example, if b_(n) corresponds to data bits d_(2n), d_(2n+1), then the partial probability for d_(2n)=0 is calculated as follows: $\begin{matrix} {{p\left( {d_{2n} = \left. 0 \middle| y \right.} \right)} = \frac{\sum\limits_{\{{{t:\quad d_{2n}} = 0}\}}\quad {{\hat{r}}_{n}(t)}}{\sum\limits_{s = 0}^{T - 1}\quad {{\hat{r}}_{n}(s)}}} & (15) \end{matrix}$

Then p(d_(2n)=1|y) is simply 1−p(d_(2n)=0|y). The detection of d_(2n+1) is performed in a similar manner. The estimate of bits d_(2n), d_(2n+1) can be either a hard detection (i.e., the values with the highest probabilities) or a soft detection in terms of probability values.

The calculation of {circumflex over (r)}_(n) may require that a₀, . . . , a_(N) be known. In practice, {a_(n)} is estimated using estimates of b_(n), so that estimates of b_(n) may be required. To accomplish this according to the present invention, an iterative solution is provided. If previous estimates of {r_(n)} exist (and thus previous estimates of {b_(n)} exist), these estimates can be used to compute new estimates for {a_(n)}. For example, if a₀ is a known symbol (e.g. a synchronization symbol), then â₁ can be computed using â₁={circumflex over (r)}^(T) ₁b₁â₁ and similar estimates can be computed for â₂ through â_(N). These estimates are estimates of {a_(n)} using the soft detected values of {b_(n)}. For cases where there are distributed synchronization symbols, the estimation can be started from multiple known symbols. Furthermore, estimates of {circumflex over (r)}_(n) can be updated when detecting b_(n) using the newly computed values of {circumflex over (r)}_(n). In summary, new estimates of {{circumflex over (r)}_(n)} can be calculated using prior estimates of {a_(n)}. The iteration can then proceed by updating {a_(n)} with these newly computed soft differential symbol and bit estimates.

During this iterative procedure, decoding may take place on the detected bit information, and this decoded information can be fed back for use in the next iteration of the equalizer. Re-estimation of the equalization parameters z and s can also be performed during this iterative procedure, and the re-estimated equalization parameters can be fed back for use in the next iteration of the equalizer.

An implementation of a receiver including the equalization techniques discussed above will now be discussed with reference FIGS. 6-8. For differential-PSK modulation (such as D-QPSK modulation), the transmitted information is included in the differential symbol b_(n) where a_(n)=b_(n)a_(n−1). An example of the metric branches where a_(n−1), a_(n), and b_(n) can have the possible values of −1 or 1 is shown in FIG. 6. An alternate example with a larger number of states is provided in FIG. 7. Using equalization techniques according to the present invention, the log-likelihood of the received differential symbol b_(n) can be estimated. More particularly, this estimate can be obtained by estimating the probability of each of the values that b_(n) is allowed to take using the vector {circumflex over (r)}_(n) discussed above.

A log-likelihood can be generated using Equation (8) as discussed above, wherein the log-likelihood is a combination of the log-likelihoods from forward and backward equalization as provided in Equations (6) and (7). This log-likelihood includes z and s parameters from different values of n. In addition, this log-likelihood is calculated using estimated values of the parameters a_(−l) for various values of l. Once a form of the log-likelihood is chosen, the vector u_(n) is constructed using the vector b_(n), where b_(n) is a vector that includes the possible values that b_(n) is allowed to take.

The vector {circumflex over (r)}_(n) is then estimated. In particular, each element of the vector {circumflex over (r)}_(n) includes the probability p(r_(n)=e_(t)|y) where e_(t)is a vector that has a single element equal to one and the remaining elements equal to zero. In particular, e^(T) _(t)b_(n) equals one element of b_(n) so that each element of {circumflex over (r)}_(n) corresponds to the probability that the corresponding element in b_(n) was transmitted, where {circumflex over (r)}_(n) can be calculated using Equation (14).

A block diagram of a communications system according to the present invention is shown in FIG. 8. In particular, a communications system can include a transmitter and a receiver. As shown in FIG. 8, the transmitter can include a microphone 31, a voice coder 32, a modulator 33, a filter 35, a digital-to-analog converter 37, a mixer 39, and an antenna 41. A receiver according to the present invention can include an antenna 61, a down converter 62, a filter 63, an analog-to-digital converter 65, a synchronizer 67, a buffer 69, an equalizer 71, a buffer 73, a decoder 75, a re-encoder 77, and a speaker 79. Radio transmissions from transmitter antenna 41 to the receiver antenna 61 are transmitted over the channel 55 which may be subject to fading, dispersion, noise, and/or other distorting effects. The operations of the transmitter as well as the down converter 62, the filter 63, the analog-to-digital converter 65, the synchronizer 67, and the buffer 69 will be understood by those having skill in the art and will thus not be discussed further herein.

The transmitter and receiver of FIG. 8 can thus be used in a radiotelephone communications system such as a cellular radiotelephone communications system used to transmit voice communications between mobile terminals and base stations. Accordingly, a base station and/or a mobile terminal in a radiotelephone communications system can include a receiver according to the present invention. Receivers according to the present invention can also be used in other radio communications systems. In addition, receivers according to the present invention can be used to provide data communications as opposed to voice communications.

A block diagram of the equalizer 71, the buffer 73, the decoder 75, and the re-encoder 77 of FIG. 8 is provided in FIG. 9. As shown, the equalizer 71 includes a channel estimator 81, a z-parameter estimator 83, an s-parameter estimator 85, a differential map symbol estimator 87, an iteration counter 89, a bit probability calculator 91, a new symbol estimator 93, a coherent symbol memory 95, and a b_(n) memory 97. In addition, the differential map symbol estimator includes a log-likelihood vector calculator 98, and a symbol probability calculator 99. An expanded view of the coherent symbol memory 95 is provided in FIG. 10.

With regard to the receiver, transmissions are received at the receiver antenna 61, and down converted and filtered using down converter 62 and filter 63. The analog-to-digital converter 65 samples the filtered signal at a predetermined rate, and the synchronizer 67 selects one of the samples for each of the received symbols to generate the y-data y(k). A predetermined number of synchronized y-data samples are then stored in the buffer 69 for use by the equalizer 71. This buffered y-data y(k) is received at the equalizer 71 as shown in FIG. 9.

In particular, the y-data y(k) is received at the channel estimator 81, and s-parameter and z-parameter estimates are generated by the s-parameter estimator 85 and the z-parameter estimator 83. The differential map symbol estimator 87 generates first vector estimates {circumflex over (r)}_(n) for each of the coherent symbols in coherent symbol memory 95 corresponding to the y-data y(k) stored in the buffer 73 during a first iteration. The new symbol estimator 93 uses the vector estimates {circumflex over (r)}_(n) calculated during the first iteration to calculate new coherent symbol estimates which are stored in the coherent symbol memory 95 for calculating second vector estimates {circumflex over (r)}_(n) during a second iteration. These steps are repeated to provide improved vector estimates {circumflex over (r)}_(n). More particularly, the number of iterations used can be determined by the iteration counter 89. In particular, the iteration counter can provide for a predetermined number of iterations before accepting the vector estimates {circumflex over (r)}_(n). A predetermined number of iterations that provides a desired level of performance can be determined by testing. Alternatively, the iteration counter 89 can compare the previous vector estimates {circumflex over (r)}_(n) with the current vector estimates {circumflex over (r)}_(n) at the end of each iteration to determine when the difference between the current and previous vector estimates is sufficiently small so as to provide a desired level of performance.

As discussed above, the differential map symbol estimator includes a log-likelihood vector calculator 98 and a symbol probability calculator 99. The log-likelihood calculator 98 can compute the vector values u_(n) using Equation (13) as discussed above wherein Equation (13) is based on Equation (11). Alternately, a derivation of Equation (13) could be based on Equation (8). The symbol probability calculator 99 can use Equation (14) to generate the vector {circumflex over (r)}_(n). In addition, Equation (14) can be written to calculate the t'th element of {circumflex over (r)}_(n) as follows: $\begin{matrix} {{{\hat{r}}_{n}(t)} = \frac{\exp \left( {u_{n}(t)} \right)}{\sum\limits_{s = 0}^{D - 1}\quad {\exp \left( {u_{n}(s)} \right)}}} & (16) \end{matrix}$

In the equalizer of FIG. 9, the {circumflex over (r)}_(n) values are calculated for each iteration using the values of the coherent symbols a₀, . . . a_(n) estimated during the previous iteration. For example, a₀ may be a known symbol such as the last coherent symbol of a synchronization word. Knowledge of a₀, however, is not required. The iterative calculation of the {circumflex over (r)}_(n) values is performed for p=1 to P where P is the number of iterations to be performed. Each iteration proceeds for n=1 to N wherein N is the number of symbols stored in the coherent symbol memory 95. The number of iterations P can be set based on testing to provide a desired level of performance. Alternately, the number of iterations P can be variable with the last iteration being determined for each calculation based on a comparison of the {circumflex over (r)}_(n) probability values from the previous and current iteration.

For each iteration, the calculations can be performed for n=1 to N computing {circumflex over (r)}_(n) ^((p)) using a₀, â₁ ^((p)), â_(n−1) ^((p)), â_(n) ^((p−1)), . . . , â_(N) ^((p−1)), and computing â_(n) ^((p))={circumflex over (r)}_(n) ^((p))b_(n)â_(n−1) ^((p)). During the first iteration with p=1, the following equalities can be provided: a_(n)=a_(n+1)=. . . a_(n)=0. Because each vector {circumflex over (r)}_(n) ^((p)) includes probability values, the values of â_(n) ^((p)) may not be restricted to the coherent symbol values, i.e., they may be “soft” symbol values. During subsequent iterations as p is incremented according to the iteration counter 89, new â_(n−1)(values are calculated at the new symbol estimator 93 using the {circumflex over (r)}_(n) (p) values of the most current iteration and saved in the coherent symbol memory 95. The new â_(n−1) ^((p)) values stored in the coherent symbol memory 95 are then used in the next iteration to calculate new {circumflex over (r)}_(n) values. Alternately, the values â_(n) ^((p)) and â_(n) ^((p−1)) can be restricted to coherent symbol values by making {circumflex over (r)}_(n) ^((p)) be an indicator vector (i.e., setting element with the largest probability to 1, and the rest to 0). These are “hard” symbol estimates.

As discussed above, the iteration counter 89 can provide for a set number of iterations of the calculations of the {circumflex over (r)}_(n) values before passing the {circumflex over (r)}_(n) values to the bit probability calculator 91. Alternately, the iteration counter 89 can determine when to pass the {circumflex over (r)}_(n) values to the bit probability calculator 91 based on a comparison of the current and previous {circumflex over (r)}_(n) values.

The {circumflex over (r)}_(n) values are then passed to the bit probability detector 91 to detect soft bits {circumflex over (d)}^((p−1)) wherein each soft bit {circumflex over (d)} includes a probability associated with each of the possible values the bit can have. The soft bits are stored in the buffer 73 and decoded using the decoder 75. For example, the decoder can perform a decoding validity check using, for example, a CRC check or other error detection and/or correction techniques. As will be understood by those having skill in the art, the decoder may perform the decoding validity check on a subset of the bits.

If valid, the decoder 75 can pass the bits on to the speaker 79. It will be understood that other processing such as digital-to-analog conversion can be performed between the decoder and the speaker. Alternately, the speaker may be omitted in a data processing system where voice communications are not provided. In such a data processing system, the decoder may pass the data to a processor for further use.

Preferably however, the decoded bits are re-encoded at the re-encoder 77 to provide a new set of coherent symbols â^((p−1)) to be stored in the coherent symbol memory 95. The new set of coherent symbols â^((p−1)) can then be used to calculate new {circumflex over (r)}_(n) values using the iterations discussed above. In the event that the decoder does not perform the decoding validity check on all bits, the re-encoder may only generate new coherent symbols â^((p−1)) corresponding to bits on which the decoding validity check have been performed. In this situation, the new coherent symbols may be substituted for corresponding symbols in the symbol memory while other symbols are left unchanged in the memory. The {circumflex over (r)}_(n) values can thus be improved based on decoding and re-encoding followed by subsequent log-likelihood and symbol probability calculations. During these subsequent log-likelihood and symbol probability calculations (performed after storing the new coherent symbols corresponding to decoded bits), it may be desirable to revise in the symbol memory only estimates for those symbols not corresponding to decoded bits.

The {circumflex over (r)}_(n) values can thus be improved by calculating the bit probabilities, decoding at least a subset of the bit probabilities to provide decoded bits, re-encoding the decoded bits to provide new symbol estimates, and then re-performing the differential map symbol estimations discussed above. The {circumflex over (r)}_(n) values thus obtained can then be processed by the bit probability calculator and the decoder to generate received data which can then be further processed and/or provided to a speaker. Alternately, the decoded bits can again be re-encoded for another step of differential map symbol estimation.

In the drawings and specification, there have been disclosed typical preferred embodiments of the invention and, although specific terms are employed, they are used in a generic and descriptive sense only and not for purposes of limitation, the scope of the invention being set forth in the following claims. In addition, it will be understood that the buffers, equalizer, decoder, and/or re-encoder of FIGS. 8-10 can be implemented using one or more digital signal processors, integrated circuits, discrete circuits, analog circuits, and/or memories. 

That which is claimed:
 1. A method for receiving data transmitted over a radio communications channel wherein the data is transmitted as a plurality of sequential symbols wherein each sequential symbol is determined as a function of a previous symbol and a respective differential symbol corresponding to a portion of the data being transmitted, the method comprising the steps of: sampling a plurality of received segments wherein the received segments correspond to respective ones of the transmitted symbols; performing an initial differential maximum a-posterrori (MAP) symbol estimation for estimated received symbols corresponding to the sampled received segments to provide initial estimates of the differential symbols; calculating new received symbol estimates using the initial estimates of the differential symbols previously estimated; performing a subsequent differential MAP symbol estimation using the new received symbol estimates to provide improved estimates of the differential symbols; and performing bit probability calculations on the improved estimates of the differential symbols.
 2. A method according to claim 1 wherein the steps of calculating the new received symbol estimates and performing subsequent differential MAP symbol estimation are repeated at least once and wherein the bit probability calculations are performed on the improved estimates of the differential symbols provided during subsequent differential MAP symbol estimation.
 3. A method according to claim 2 wherein the steps of calculating the new received symbol estimates and performing subsequent differential MAP symbol estimation are repeated a predetermined number of times.
 4. A method for receiving data transmitted over a radio communications channel wherein the data is transmitted as a plurality of sequential symbols wherein each sequential symbol is determined as a function of a previous symbol and a respective differential symbol corresponding to a portion of the data being transmitted, the method comprising the steps of: sampling a plurality of received segments wherein the received segments correspond to respective ones of the transmitted symbols; performing an initial differential maximum a-posterrori (MAP) symbol estimation for estimated received symbols corresponding to the sampled received segments to provide initial estimates of the differential symbols; calculating new received symbol estimates using the initial estimates of the differential symbols; performing a subsequent differential MAP symbol estimation using the new received symbol estimates to provide improved estimates of the differential symbols; and performing bit probability calculations on the improved estimates of the differential symbols; wherein the steps of calculating the new received symbol estimates and performing subsequent differential MAP symbol estimation are repeated at least once and wherein the bit probability calculations are performed on the improved estimates of the differential symbols provided during subsequent differential MAP symbol estimation; wherein the steps of calculating the new received symbol estimates and performing subsequent differential MAP symbol estimation are repeated until the improved estimates of the differential symbols converge to within a predetermined threshold.
 5. A method according to claim 1 further comprising the step of: decoding the estimates of the bit values.
 6. A method for receiving data transmitted over a radio communications channel wherein the data is transmitted as a plurality of sequential symbols wherein each sequential symbol is determined as a function of a previous symbol and a respective differential symbol corresponding to a portion of the data being transmitted, the method comprising the steps of: sampling a plurality of received segments wherein the received segments correspond to respective ones of the transmitted symbols; performing an initial differential maximum a-posterrori (MAP) symbol estimation for estimated received symbols corresponding to the sampled received segments to provide initial estimates of the differential symbols; calculating new received symbol estimates using the initial estimates of the differential symbols; performing a subsequent differential MAP symbol estimation using the new received symbol estimates to provide improved estimates of the differential symbols; performing bit probability calculations on the improved estimates of the differential symbols; decoding the estimates of the bit values; re-encoding the decoded estimates of the bit values to provide re-encoded received symbol estimates; performing subsequent differential MAP symbol estimation using the re-encoded received symbol estimates to provide further improved estimates of the differential symbols; and performing bit probability calculations on the further improved estimates of the differential symbols.
 7. A method according to claim 1 wherein the steps of performing the differential MAP symbol estimation each comprise: performing log-likelihood calculations for estimated received symbols corresponding to the sampled transmission segments; and performing differential symbol probability calculations.
 8. A method according to claim 1 wherein the step of performing log-likelihood calculations is preceded by the step of: estimating channel parameters based on the sampled transmission segments wherein the log-likelihood calculations use the estimated channel parameters.
 9. A method according to claim 8 wherein the step of estimating channel parameters comprises estimating s-parameters and z-parameters.
 10. A method for receiving data transmitted over a radio communications channel wherein the data is transmitted as a plurality of sequential symbols wherein each sequential symbol is determined as a function of a previous symbol and a respective differential symbol corresponding to a portion of the data being transmitted, the method comprising the steps of: sampling a plurality of received segments wherein the received segments correspond to respective ones of the transmitted symbols; performing a differential MAP symbol estimation for estimated received symbols corresponding to the sampled received segments to provide estimates of the differential symbols; performing bit probability calculations on the estimates of the differential symbols; decoding the estimates of the bit values; re-encoding the decoded estimates of the bit values to provide re-encoded received symbol estimates; performing a subsequent differential MAP symbol estimation using the re-encoded received symbol estimates to provide further improved estimates of the differential symbols; and performing subsequent bit probability calculations on the further improved estimates of the differential symbols.
 11. A method according to claim 10 wherein the step of performing bit probability calculations is preceded by the steps of: calculating new received symbol estimates using the estimates of the differential symbols; performing an iterative differential MAP symbol estimation using the new received symbol estimates to provide improved estimates of the differential symbols wherein the step of performing bit probability calculations comprises performing bit probability calculations on the new received symbol estimates.
 12. A method according to claim 11 wherein the steps of calculating the new received symbol estimates and performing the iterative differential MAP symbol estimation are repeated at least once and wherein the bit probability calculations are performed on the improved estimates of the differential symbols provided during a last step of performing iterative differential MAP symbol estimation.
 13. A method according to claim 12 wherein the steps of calculating the new received symbol estimates and performing iterative differential MAP symbol estimation are repeated a predetermined number of times.
 14. A method according to claim 12 wherein the steps of calculating the new received symbol estimates and performing iterative differential MAP symbol estimation are repeated until the improved estimates of the differential symbols converge to within a predetermined threshold.
 15. A method according to claim 10 wherein the step of performing the differential MAP symbol estimation comprises: performing log-likelihood calculations for estimated received symbols corresponding to the sampled transmission segments; and performing differential symbol probability calculations.
 16. A method according to claim 15 wherein the step of performing log-likelihood calculations is preceded by the step of: estimating channel parameters based on the sampled transmission segments wherein the log-likelihood calculations use the estimated channel parameters.
 17. A method according to claim 16 wherein the step of estimating channel parameters comprises estimating s-parameters and z-parameters.
 18. A receiver that receives data transmitted over a radio communications channel wherein the data is transmitted as a plurality of sequential symbols wherein each sequential symbol is determined as a function of a previous symbol and a respective differential symbol corresponding to a portion of the data being transmitted, the receiver comprising: an analog-to-digital converter that samples a plurality of received segments wherein the received segments correspond to respective ones of the transmitted symbols; a differential MAP symbol estimator coupled to the analog-to-digital converter, wherein the differential MAP symbol estimator performs an initial differential MAP symbol estimation for estimated received symbols corresponding to the sampled received segments to provide initial estimates of the differential symbols; a new symbol estimator coupled to the differential MAP symbol estimator, wherein the new symbol estimator calculates new received symbol estimates using the initial estimates of the differential symbols, and wherein the differential MAP symbol estimator then performs a subsequent differential MAP symbol estimation using the new received symbol estimates to provide improved estimates of the differential symbols previously estimated; and a bit probability calculator coupled to the differential MAP symbol estimator, wherein the bit probability calculator performs bit probability calculations on the improved estimates of the differential symbols.
 19. A receiver according to claim 18 wherein the differential MAP symbol estimator and the new symbol estimator iteratively calculate the new received symbol estimates and perform subsequent differential MAP symbol estimation at least twice and wherein the bit probability calculator performs the bit probability calculations on improved estimates of the differential symbols.
 20. A receiver according to claim 19 wherein the differential MAP symbol estimator and the new symbol estimator iteratively calculate the new received symbol estimates and perform subsequent differential MAP symbol estimation a predetermined number of times.
 21. A receiver that receives data transmitted over a radio communications channel wherein the data is transmitted as a plurality of sequential symbols wherein each sequential symbol is determined as a function of a previous symbol and a respective differential symbol corresponding to a portion of the data being transmitted, the receiver comprising: an analog-to-digital converter that samples a plurality of received segments wherein the received segments correspond to respective ones of the transmitted symbols; a differential MAP symbol estimator coupled to the analog-to-digital converter, wherein the differential MAP symbol estimator performs an initial differential MAP symbol estimation for estimated received symbols corresponding to the sampled received segments to provide initial estimates of the differential symbols; a new symbol estimator coupled to the differential MAP symbol estimator, wherein the new symbol estimator calculates new received symbol estimates using the initial estimates of the differential symbols, and wherein the differential MAP symbol estimator then performs a subsequent differential MAP symbol estimation using the new received symbol estimates to provide improved estimates of the differential symbols; and a bit probability calculator coupled to the differential MAP symbol estimator, wherein the bit probability calculator performs bit probability calculations on the improved estimates of the differential symbols; wherein the differential MAP symbol estimator and the new symbol estimator iteratively calculate the new received symbol estimates and perform subsequent differential MAP symbol estimation at least twice and wherein the bit probability calculator performs the bit probability calculations on improved estimates of the differential symbols; wherein the differential MAP symbol estimator and the new symbol estimator iteratively calculate the new received symbol estimates and perform subsequent differential MAP symbol estimation a variable number of times until the improved estimates of the differential symbols converge to within a predetermined threshold.
 22. A receiver according to claim 18 further comprising: a decoder coupled to the bit probability calculator wherein the decoder decodes the estimates of the bit values.
 23. A receiver that receives data transmitted over a radio communications channel wherein the data is transmitted as a plurality of sequential symbols wherein each sequential symbol is determined as a function of a previous symbol and a respective differential symbol corresponding to a portion of the data being transmitted, the receiver comprising: an analog-to-digital converter that samples a plurality of received segments wherein the received segments correspond to respective ones of the transmitted symbols; a differential MAP symbol estimator coupled to the analog-to-digital converter, wherein the differential MAP symbol estimator performs an initial differential MAP symbol estimation for estimated received symbols corresponding to the sampled received segments to provide initial estimates of the differential symbols; a new symbol estimator coupled to the differential MAP symbol estimator, wherein the new symbol estimator calculates new received symbol estimates using the initial estimates of the differential symbols, and wherein the differential MAP symbol estimator then performs a subsequent differential MAP symbol estimation using the new received symbol estimates to provide improved estimates of the differential symbols; a bit probability calculator coupled to the differential MAP symbol estimator, wherein the bit probability calculator performs bit probability calculations on the improved estimates of the differential symbols; a decoder coupled to the bit probability calculator wherein the decoder decodes the estimates of the bit values; and a re-encoder coupled between the decoder and the differential MAP symbol estimator wherein the re-encoder re-encodes the decoded estimates of the bit values to provide re-encoded received symbol estimates, wherein the differential MAP symbol estimator performs subsequent differential MAP symbol estimation using the re-encoded received symbol estimates to provide further improved estimates of the differential symbols, and wherein the bit probability calculator performs bit probability calculations on the further improved estimates of the differential symbols.
 24. A receiver according to claim 18 wherein the differential MAP symbol estimator comprises: a log-likelihood vector calculator that performs log-likelihood calculations for estimated received symbols corresponding to the sampled transmission segments; and a symbol probability calculator that performs differential symbol probability calculations.
 25. A receiver according to claim 18 further comprising: a channel parameter estimator coupled between the analog-to-digital converter and the differential MAP symbol estimator wherein the channel parameter estimator estimates channel parameters based on the sampled transmission segments.
 26. A receiver according to claim 25 wherein the channel parameter estimator estimates s-parameters and z-parameters.
 27. A receiver that receives data transmitted over a radio communications channel wherein the data is transmitted as a plurality of sequential symbols wherein each sequential symbol is determined as a function of a previous symbol and a respective differential symbol corresponding to a portion of the data being transmitted, the receiver comprising: an analog-to-digital converter that samples a plurality of received segments wherein the received segments correspond to respective ones of the transmitted symbols; a differential MAP symbol generator coupled to the analog-to-digital converter, wherein the differential MAP symbol generator performs a differential MAP symbol estimation for estimated received symbols corresponding to the sampled received segments to provide estimates of the differential symbols; a bit probability calculator coupled to the differential MAP symbol generator, wherein the bit probability calculator performs bit probability calculations on the estimates of the differential symbols; a decoder coupled to the bit probability calculator wherein the decoder decodes the estimates of the bit values; and a re-encoder coupled between the decoder and the differential MAP symbol estimator wherein the re-encoder re-encodes the decoded estimates of the bit values to provide re-encoded received symbol estimates wherein the differential MAP symbol generator performs a subsequent differential MAP symbol estimation using the re-encoded received symbol estimates to provide further improved estimates of the differential symbols, and wherein the bit probability calculator performs subsequent bit probability calculations on the further improved estimates of the differential symbols.
 28. A receiver according to claim 27 further comprising: a new symbol estimator coupled to the differential MAP symbol estimator, wherein the new symbol estimator calculates new received symbol estimates using the estimates of the differential symbols, and wherein the differential MAP symbol estimator performs an iterative differential MAP symbol estimation using the new received symbol estimates to provide improved estimates of the differential symbols, and wherein the bit probability calculator performs bit probability calculations on the new received symbol estimates.
 29. A receiver according to claim 28 wherein the new symbol estimator calculates the new received symbol estimates and wherein the differential MAP symbol estimator performs the iterative differential MAP symbol estimation at least once and wherein the bit probability calculator performs bit probability calculations on the improved estimates of the differential symbols provided after a last iterative differential MAP symbol estimation.
 30. A receiver according to claim 29 wherein the new symbol estimator calculates the new received symbol estimates and wherein the differential MAP symbol estimator performs iterative differential MAP symbol estimation a predetermined number of times.
 31. A receiver according to claim 29 wherein the new symbol estimator calculates the new received symbol estimates and wherein the differential MAP symbol estimator performs iterative differential MAP symbol estimation a variable number of times until the improved estimates of the differential symbols converge to within a predetermined threshold.
 32. A receiver according to claim 27 wherein the differential MAP symbol estimator performs log-likelihood calculations for estimated received symbols corresponding to the sampled transmission segments, and performs differential symbol probability calculations.
 33. A receiver according to claim 32 wherein the differential MAP symbol estimator estimates channel parameters based on the sampled transmission segments wherein the log-likelihood calculations use the estimated channel parameters.
 34. A receiver according to claim 33 wherein the estimated channel parameters comprise s-parameters and z-parameters. 